|
The GNU Compiler Collection (GCC) is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain. The Free Software Foundation (FSF) distributes GCC under the GNU General Public License (GNU GPL). GCC has played an important role in the growth of free software, as both a tool and an example. Originally named the GNU C Compiler, when it only handled the C programming language, GCC 1.0 was released in 1987.〔 It was extended to compile C++ in December of that year. Front ends were later developed for Objective-C, Objective-C++, Fortran, Java, Ada, and Go among others.〔(【引用サイトリンク】title=Programming Languages Supported by GCC )〕 GCC has been ported to a wide variety of processor architectures, and is widely deployed as a tool in the development of both free and proprietary software. GCC is also available for most embedded platforms, including Symbian (called ''gcce''),〔(【引用サイトリンク】title=Symbian GCC Improvement Project )〕 AMCC, and Freescale Power Architecture-based chips.〔(【引用サイトリンク】title=Linux Board Support Packages )〕 The compiler can target a wide variety of platforms, including video game consoles such as the PlayStation 2 and Dreamcast. As well as being the official compiler of the GNU operating system, GCC has been adopted as the standard compiler by many other modern Unix-like computer operating systems, including Linux and the BSD family, although FreeBSD is moving to the LLVM system and OS X has moved to the LLVM system.〔http://llvm.org/Users.html〕 Versions are also available for Microsoft Windows and other operating systems; GCC can compile code for Android and iOS. == History == In an effort to bootstrap the GNU operating system, Richard Stallman asked Andrew S. Tanenbaum, the author of the Amsterdam Compiler Kit (also known as the ''Free University'' Compiler Kit) if he could use that software for GNU. When Tanenbaum told him that while the ''Free University'' was free, the compiler was not, Stallman decided to write his own. Stallman's initial plan was to rewrite an existing compiler from Lawrence Livermore Laboratory from Pastel to C with some help from Len Tower and others. Stallman wrote a new C front end for the Livermore compiler, but then realized that it required megabytes of stack space, an impossibility on a 68000 Unix system with only 64 KB, and concluded he would have to write a new compiler from scratch.〔 None of the Pastel compiler code ended up in GCC, though Stallman did use the C front end he had written.〔 GCC was first released March 22, 1987, available by FTP from MIT. Stallman was listed as the author but cited others for their contributions, including Jack Davidson and Christopher Fraser for the idea of using RTL as an intermediate language, Paul Rubin for writing most of the preprocessor and Leonard Tower for "parts of the parser, RTL generator, RTL definitions, and of the Vax machine description." Described as the "first free software hit" by Salus, the GNU compiler arrived just at the time when Sun Microsystems was unbundling its development tools from its operating system, selling them separately at a higher combined price than the previous bundle, which led many of Sun's users to buy or download GCC instead of the vendor's tools. By 1990, GCC supported thirteen computer architectures, was outperforming several vendor compilers, was shipped by Data General and NeXT with their workstations and was used by Lotus Development Corporation. By 1991, GCC 1.x had reached a point of stability, but architectural limitations prevented many desired improvements, so the FSF started work on GCC 2.x. As GCC was licensed under the GPL, programmers wanting to work in other directions — particularly those writing interfaces for languages other than C — were free to develop their own fork of the compiler, provided they meet the GPL's terms, including its requirements to distribute source code. Multiple forks proved inefficient and unwieldy, however, and the difficulty in getting work accepted by the official GCC project was greatly frustrating for many. The FSF kept such close control on what was added to the official version of GCC 2.x that GCC was used as one example of the "cathedral" development model – in Eric S. Raymond's essay ''The Cathedral and the Bazaar''. With the release of 4.4BSD in 1994, GCC became the default compiler for most BSD systems. In 1997, a group of developers formed EGCS – Experimental/Enhanced GNU Compiler System〔 – to merge several experimental forks into a single project. The basis of the merger was a GCC development snapshot taken between the 2.7 and 2.81 releases. Projects merged included g77 (Fortran), PGCC (P5 Pentium-optimized GCC), many C++ improvements, and many new architectures and operating system variants. EGCS development proved considerably more vigorous than GCC development, so much so that the FSF officially halted development on their GCC 2.x compiler, blessed EGCS as the official version of GCC and appointed the EGCS project as the GCC maintainers in April 1999. With the release of GCC 2.95 in July 1999 the two projects were once again united. GCC has since been maintained by a varied group of programmers from around the world under the direction of a steering committee. It has been ported to more kinds of processors and operating systems than any other compiler. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「GNU Compiler Collection」の詳細全文を読む スポンサード リンク
|